package com.evaluation.kexingcp.psycho.evaluation.sys.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.evaluation.kexingcp.common.core.util.TenantTable;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.EqualsAndHashCode;

import java.time.LocalDateTime;

/**
 * 测评记录
 *
 * @author pig
 * @date 2024-07-12 09:48:41
 */
@TenantTable
@TableName("evaluation_factor_records")
@EqualsAndHashCode(callSuper = true)
@Schema(description = "测评记录")
public class EvaluationFactorRecordsEntity extends Model<EvaluationFactorRecordsEntity> {


	/**
	* 任务名称
	*/
    @Schema(description="任务名称")
    private String taskName;

	/**
	* 量表类型
	*/
    @Schema(description="量表类型")
    private String scaleType;

	/**
	* 任务id
	*/
    @Schema(description="任务id")
    private Long taskId;

	/**
	* 评测结果
	*/
    @Schema(description="评测结果")
    private String evaluationResult;

	/**
	* 用户
	*/
    @Schema(description="用户")
    private Long userId;

	/**
	* 用户信息
	*/
    @Schema(description="用户信息")
    private String userInfo;

	/**
	* 主键
	*/
    @TableId(type = IdType.ASSIGN_ID)
    @Schema(description="主键")
    private Long id;

	/**
	* 量表名称
	*/
    @Schema(description="量表名称")
    private String scaleName;

	/**
	* 量表ID
	*/
    @Schema(description="量表ID")
    private Long scaleId;

	/**
	* 创建人
	*/
	@TableField(fill = FieldFill.INSERT)
    @Schema(description="创建人")
    private String createBy;

	/**
	* 创建时间
	*/
	@TableField(fill = FieldFill.INSERT)
    @Schema(description="创建时间")
    private LocalDateTime createTime;

	/**
	* 修改人
	*/
	@TableField(fill = FieldFill.INSERT_UPDATE)
    @Schema(description="修改人")
    private String updateBy;

	/**
	* 修改时间
	*/
	@TableField(fill = FieldFill.INSERT_UPDATE)
    @Schema(description="修改时间")
    private LocalDateTime updateTime;

	/**
	* 删除标记
	*/
    @TableLogic
	@TableField(fill = FieldFill.INSERT)
    @Schema(description="删除标记")
    private String delFlag;


	@TableField(exist = false)
	private String fileUrl;

	@TableField(exist = false)
	private Integer canViewPersonalReport;

	@Schema(description="部门id")
	private Long deptId;

	@TableField(exist = false)
	private String username;

	public String getUsername() {
		return username;
	}

	public void setUsername(String username) {
		this.username = username;
	}

	public Integer getCanViewPersonalReport() {
		return canViewPersonalReport;
	}

	public void setCanViewPersonalReport(Integer canViewPersonalReport) {
		this.canViewPersonalReport = canViewPersonalReport;
	}

	public Long getDeptId() {
		return deptId;
	}

	public void setDeptId(Long deptId) {
		this.deptId = deptId;
	}

	public String getFileUrl() {
		return fileUrl;
	}

	public void setFileUrl(String fileUrl) {
		this.fileUrl = fileUrl;
	}

	/**
	* 租户ID
	*/
    @Schema(description="租户ID")
    private Long tenantId;

	public String getTaskName() {
		return taskName;
	}

	public void setTaskName(String taskName) {
		this.taskName = taskName;
	}

	public String getScaleType() {
		return scaleType;
	}

	public void setScaleType(String scaleType) {
		this.scaleType = scaleType;
	}

	public Long getTaskId() {
		return taskId;
	}

	public void setTaskId(Long taskId) {
		this.taskId = taskId;
	}

	public String getEvaluationResult() {
		return evaluationResult;
	}

	public void setEvaluationResult(String evaluationResult) {
		this.evaluationResult = evaluationResult;
	}

	public Long getUserId() {
		return userId;
	}

	public void setUserId(Long userId) {
		this.userId = userId;
	}

	public String getUserInfo() {
		return userInfo;
	}

	public void setUserInfo(String userInfo) {
		this.userInfo = userInfo;
	}

	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public String getScaleName() {
		return scaleName;
	}

	public void setScaleName(String scaleName) {
		this.scaleName = scaleName;
	}

	public Long getScaleId() {
		return scaleId;
	}

	public void setScaleId(Long scaleId) {
		this.scaleId = scaleId;
	}

	public String getCreateBy() {
		return createBy;
	}

	public void setCreateBy(String createBy) {
		this.createBy = createBy;
	}

	public LocalDateTime getCreateTime() {
		return createTime;
	}

	public void setCreateTime(LocalDateTime createTime) {
		this.createTime = createTime;
	}

	public String getUpdateBy() {
		return updateBy;
	}

	public void setUpdateBy(String updateBy) {
		this.updateBy = updateBy;
	}

	public LocalDateTime getUpdateTime() {
		return updateTime;
	}

	public void setUpdateTime(LocalDateTime updateTime) {
		this.updateTime = updateTime;
	}

	public String getDelFlag() {
		return delFlag;
	}

	public void setDelFlag(String delFlag) {
		this.delFlag = delFlag;
	}

	public Long getTenantId() {
		return tenantId;
	}

	public void setTenantId(Long tenantId) {
		this.tenantId = tenantId;
	}
}